# -*- coding: utf-8 -*-
from PyQt4 import QtGui
from Bauteilkiste.UIClasses.UIInputDialog import UIInputDialog

class UIWiderstand(UIInputDialog):    
    def __init__(self, parent=None):
        ###############################################
        ######Konsruktoren aufrufe#####################
        ###############################################
        #QtGui.QDialog.__init__(self, parent)
        UIInputDialog.__init__(self, parent)
        self.tableName = "Widerstände"

        ###############################################
        #####Elemente erzeugen#########################
        ###############################################

        labels = {}
        for l in ["Wert", "Material", "Leistung", "Bauform"]:
            labels[l] = QtGui.QLabel(l)

        self.inputs["Wert"]     = QtGui.QLineEdit()
        self.inputs["Einheit"]  = QtGui.QComboBox()
        self.inputs["Material"] = QtGui.QComboBox()
        self.inputs["Leistung"] = QtGui.QLineEdit()
        

        for l in ["Ohm", "kOhm", "MOhm"]:
            self.inputs["Einheit"].addItem(l)

        for l in ["Kohleschicht", "Metalloxid", "Drahtbrücke"]:
            self.inputs["Material"].addItem(l)

        ################################################
        #####Eigenschaften / Events#####################
        ################################################

        self.inputs["Einheit"].setEditable(True)
        self.inputs["Material"].setEditable(True)

        self.inputs["Leistung"].editingFinished.connect(self.checkNumber)
        self.inputs["Wert"].editingFinished.connect(self.checkNumber)
        self.numberFields.append("Leistung")
        self.numberFields.append("Wert")
        
        self.setWindowTitle("Widerstand hinzufügen")

        #############################################
        ######Anordnen###############################
        #############################################

        mainVBox    = QtGui.QVBoxLayout()
        topGrid     = QtGui.QGridLayout()
        bottomGrid  = QtGui.QGridLayout()
        buttonBox   = QtGui.QHBoxLayout()
        wertHBox    = QtGui.QHBoxLayout()

        wertHBox.addWidget(self.inputs["Wert"])
        wertHBox.addWidget(self.inputs["Einheit"])

        topGrid.addWidget(labels["Wert"],               0, 0)
        topGrid.addLayout(wertHBox,                     0, 1)
        topGrid.addWidget(labels["Leistung"],           1, 0)
        topGrid.addWidget(self.inputs["Leistung"],      1, 1)

        bottomGrid.addWidget(labels["Material"],        0, 0)
        bottomGrid.addWidget(labels["Bauform"],         0, 1)
        bottomGrid.addWidget(self.inputs["Material"],   1, 0)
        bottomGrid.addWidget(self.inputs["Bauform"],    1, 1)

        buttonBox.addWidget(self.buttonAccept)
        buttonBox.addWidget(self.buttonReject)

        mainVBox.addLayout(topGrid)
        mainVBox.addLayout(bottomGrid)
        mainVBox.addWidget(self.lagerinformationen)
        mainVBox.addLayout(buttonBox)

        self.setLayout(mainVBox)

